这一切的传说都不足以描述他们的真面目。当她现身人类面前时,远比任何传说都更加狰狞和威严。
访问http://www.langzi.fun/sitemap.xml的时候,出现了下面的错误
This page contains the following errors:
error on line 33 at column 52: EntityRef: expecting ';'
Below is a rendering of the page up to the first error.
一开始以为是编码的问题,把sitemap.xml重新编码成Unicode和utf-8都不可以,怀疑是hexo的sitemap的插件冲突了。但是觉得不应该,因为目录下生成了sitemap.xml。
后来查阅xml的相关资料才明白问题出在哪儿,因为大多数浏览器在显示xml文件时,显示的并不是文件源码,而是经过“xml解析器”解析后的结果。但是,“xml解析器”在遇到字符“&”时,会把“&”当做一个实体引用的开始,而去寻找这个实体引用的结束符号“;”。
问题出现在我之前有一篇文章,标题为
bettercap&xerosploit 嗅探劫持
标题中的&与xml中出现了冲突,重新修改了标题后就恢复正常了
在xml文档中,像“&”这样的预定义的实体引用一共有5个,分别是“&”、“<”、“>”、“’”、“””。
把实体引用编码后使用,即
把“&”编码为 “&”
把“<”编码为“<”
把“>”编码为 “>”
把“'”编码为 “'”
把“"”编码为 “"”
针对本文上面的问题,即把原来代码中的这些字符转义;